package com.example.demo.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.example.demo.common.Result;
import com.example.demo.entity.Role;
import com.example.demo.entity.User;
import com.example.demo.entity.UserRole;

import java.util.List;

public interface RoleService {
    /**
     * 分页查询角色
     * @param pageNum
     * @param pageSize
     * @param roleCode
     * @param roleName
     * @return
     */
    IPage<Role> selectPage(Integer pageNum, Integer pageSize, String roleCode, String roleName);

    /**
     * 添加角色
     * @param role
     * @return
     */
    Result<?> addRole(Role role);

    /**
     * 更新角色
     * @param role
     * @return
     */
    Result<?> updateRole(Role role);

    /**
     * 删除角色
     * @param roleId
     * @return
     */
    Result<?> deleteRole(Integer roleId);

    /**
     * 根据角色查询用户
     * @param roleId
     * @return
     */
    IPage<User> selectUserByRoleId(Integer pageNum, Integer pageSize, Integer roleId, String username, String phoneNumber);
}
